package com.zwps.biz.api.model.dto.file.record;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import com.zwps.common.api.validator.IntOption;

/**
 * @author shanwen
 * @description:
 * @date 2023-09-18
 * @ClassName AddFileByUrlDTO
 */
@Schema(description = "新增文件记录")
@Getter
@Setter
@ToString
public class AddFileRecordDTO {


    /**
     * 文件名称
     */
    @Schema(description = "文件名称")
    @NotBlank
    private String fileName;


    /**
     * 文件下载的地址
     */
    @Schema(description = "文件地址")
    private String fileUrl;

    /**
     * 是否外部文件（0：不是|1：是）
     */
    @Schema(description = "是否外部文件（0：不是|1：是）")
    @IntOption({0,1})
    @NotNull
    private Integer externalFile;

    @Schema(description = "文件目录")
    private String filePath;

    @Schema(description = "文件大小")
    private Long fileSize;

    @Schema(description = "文件类型")
    private Integer fileClass;

    @Schema(description = " 0：文件|1：图片|2：音频|3：视频|4：文档")
    private String fileType;

    @Schema(description ="存储类型")
    private Integer storeType;

    @Schema(description ="上传状态")
    private Integer uploadStatus;
}
